/**
 * PLM项目基础服务类
 * 为其他服务提供基础功能
 */

/**
 * 基础服务类
 */
class BaseService {
    /**
     * 构造函数
     */
    constructor() {
        this._db = null;
        this._collection = null;
    }

    /**
     * 抛出应用错误
     * @param {String} msg 错误信息
     */
    AppError(msg) {
        console.error('[PLM服务]', msg);
        throw new Error(msg);
    }

    /**
     * 数据验证失败
     * @param {String} msg 错误信息
     */
    ValidationError(msg) {
        console.error('[PLM验证错误]', msg);
        throw new Error(msg);
    }

    /**
     * 权限检查失败
     * @param {String} msg 错误信息
     */
    AuthError(msg = '无操作权限') {
        console.error('[PLM权限错误]', msg);
        throw new Error(msg);
    }
}

// 导出基础服务类
module.exports = BaseService; 